1. Field of the Invention
The present invention relates to data communication in a computer system, and more specifically to methods and apparatus for an automatically enabling terminator for internal buses providing external bus expansion.
2. Art Background
A small computer standard interface (SCSI) specification defines a number of parameters to interface peripheral devices to computer systems. Typically, computer systems implementing the SCSI specification contain an internal bus. In addition, computer systems contain a connector so that the internal bus may be expanded external to the computer system. The expansion of the bus permits interfacing of a number of peripheral devices.
The SCSI bus specification specifies termination of the SCSI bus at both ends of the bus. Termination of the SCSI bus on the internal side presents little problem. On the internal side of the SCSI bus, a permanent termination device may be implemented. However, on an external side of the SCSI bus, either an expansion cable is connected to the connector or the SCSI bus does not expand externally.
If the SCSI bus is expanded beyond the expansion connector, then the external devices interfaced must provide termination of the SCSI bus. Alternatively, the external side of the SCSI bus is terminated with an external terminator directly connected to the external connector. However, in this configuration, the computer system is burdened with the costs associated with the external terminator assembly. Moreover, if a user disconnects an external device, the user may leave the external terminator off, thereby leaving the SCSI bus terminated only at the internal side of the SCSI bus. Therefore, it is desirable to terminate both ends of the SCSI bus such that a user need not use an external terminator. It is also desirable to provide an internal termination on both sides of the SCSI device without requiring a user to set a jumper switch. The present invention provides a reliable termination for both sides of the SCSI bus without user intervention thereby saving the cost of an external terminator and the possibility of incorrect termination.
A computer system contains a small computer standard interface (SCSI) having a plurality of components to interface external peripheral devices to the computer system in accordance with a SCSI specification. Within the computer system, the SCSI interface contains a SCSI bus having an internal SCSI terminator at an internal end of the SCSI bus, and an internal switchable SCSI terminator at an external end of the SCSI bus. The internal SCSI terminator provides impedance termination on the internal side of the SCSI bus in accordance with the SCSI specification. The SCSI bus permits expansion beyond the computer system enclosure at the external side of the SCSI bus via an external connector and cable. The expanded SCSI bus permits interfacing of external SCSI peripheral devices to the computer system. The internal switchable SCSI terminator automatically provides termination at the external side of the SCSI bus when no external SCSI peripheral devices or external terminators are coupled to the SCSI bus.
The internal switchable SCSI terminator of the present invention senses whether any external SCSI peripheral devices are attached to the SCSI bus. If external SCSI peripheral devices and/or an external terminator are attached to the SCSI bus, then the internal switchable SCSI terminator does not terminate the SCSI bus on the external side. Alternatively, if the internal switchable SCSI terminator senses that no external SCSI peripheral devices or external terminator are attached, then the internal switchable SCSI terminator terminates the SCSI bus at the external end. Consequently, if a user does not attach external SCSI peripheral devices and fails to terminate the SCSI bus at the external end, then the bus is automatically terminated by the internal switchable SCSI terminator. Because the internal switchable SCSI terminator automatically senses the presence of an external SCSI device or external terminator, no manual switch, such as a dip switch, is required on the SCSI interface.